package biz.datalk.industrialland.common.log.pojo.po;

import biz.datalk.industrialland.common.pojo.po.BasePO;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * Mapping Table: sys_log
 * 
 * @author tarofang
 */
@Getter
@Accessors(chain=true)
@EqualsAndHashCode(onlyExplicitlyIncluded=true, callSuper=false)
@Setter
public class SysLog extends BasePO implements Serializable {
    /**
     *
     * sys_log.id
     */
    @EqualsAndHashCode.Include
    private Long id;

    /**
     * 日志类型 0-未知 1-登录日志 2-操作日志
     *
     * sys_log.log_type
     */
    private Integer logType;

    /**
     * 操作者系统ID, sys_user.id
     *
     * sys_log.opt_user_id
     */
    private Long optUserId;

    /**
     * 操作者账号, sys_user.username
     *
     * sys_log.opt_username
     */
    private String optUsername;

    /**
     * 操作者的IP地址
     *
     * sys_log.opt_ip
     */
    private String optIp;

    /**
     * 操作实际发生时间，格式为 yyyy-MM-dd HH:mm:ss
     *
     * sys_log.opt_time
     */
    private String optTime;

    /**
     * 模块编码
     *
     * sys_log.opt_module_code
     */
    private String optModuleCode;

    /**
     * 模块名称
     *
     * sys_log.opt_module_name
     */
    private String optModuleName;

    /**
     * 分类编码
     *
     * sys_log.opt_type_code
     */
    private String optTypeCode;

    /**
     * 分类名称
     *
     * sys_log.opt_type_name
     */
    private String optTypeName;

    /**
     * 操作编码
     *
     * sys_log.opt_code
     */
    private String optCode;

    /**
     * 操作名称
     *
     * sys_log.opt_name
     */
    private String optName;

    /**
     * 操作结果, 1-成功 0-失败
     *
     * sys_log.opt_result
     */
    private String optResult;

    /**
     * 服务端IP地址，标准ip格式数据（目的地址，不可为空）
     *
     * sys_log.opt_server_ip
     */
    private String optServerIp;

    /**
     * 客户端类型
     *
     * sys_log.client_type
     */
    private String clientType;

    /**
     * 客户端版本
     *
     * sys_log.client_ver
     */
    private String clientVer;

    /**
     * 客户端ID
     *
     * sys_log.client_id
     */
    private String clientId;

    /**
     * 日志内容
     *
     * sys_log.log_content
     */
    private String logContent;

    /**
     * 消耗时间， 毫秒
     *
     * sys_log.cost_millisecond
     */
    private Long costMillisecond;

    /**
     * 应用标识appkey
     *
     * sys_log.app_key
     */
    private String appKey;

    /**
     * 接口调用令牌
     *
     * sys_log.access_token
     */
    private String accessToken;

    /**
     * 记录创建时间
     *
     * sys_log.create_time
     */
    private Date createTime;

    private static final long serialVersionUID = 1L;
}